package com.lancoo.answer.model.bean

class SameQuesDetail : ArrayList<SameQuesDetailItem>()

data class SameQuesDetailItem(
    //add by long
    var IsConsolidated: Int,

    val RecQues: RecQuesA,
    val TkModel: TkModelA
)

data class RecQuesA(
    val AnswerList: AnswerListA,
    var IsFavourite: Boolean,
    var NoteID: String,
    val QuesID: String
)


data class AnswerListA(
    val AudioPath: String,
    val ChildAnswer: String,
    val ChildIndex: Int,
    val EvalScore: Double,
    val ImagePath: String,
    val ItemList: List<Any>,
    val ScoreRate: Double,
    val SortIndexType: Int,
    val State: Int,
    val StuAnswer: String,
    val TotalScore: Double,
    val WrittingAnswerType: Int
)

data class TkModelA(
    //add by long
    var SameState: Int,
    var Duration: Int,
    var CorrectRate: Double,
    val AudioArticle: String,
    val AudioList: List<SameAudio>,
    val AudioSpeed: Double,
    val TypeNo: String,
    val TypeName: String,
    val GenreID: Int,
    val GenreName: String,
    val ChildList: List<ChildSame>,
    val DVAL: String,
    val EXVal: String,
    val EvalType: Int,
    val GenreType: String,
    val HVal: String,
    val ImportKlgList: List<ImportKlgSame>,
    val IsOral: Boolean,
    val MainKlgList: List<MainKlgSame>,
    val ModelAnswerAreaList: MutableList<ModelAnswerAreaSame>,
    val ModelAnswerInfoList: MutableList<ModelAnswerInfoSame>,
    val ModelTextInfoList: MutableList<TextInfo>,
    val QuesAudio: QuesAudioSame,
    val QuesBody: String,
    val QuesBrief: String,
    val QuesLeaderContent: String,
    val ReplaceItemCount: Int,
    val QuesChildNum: Int,
    val QuesGuidance: String,
    val QuesID: String,
    val SortNum: Int,
    val SpecialFeatureCodes: String,
    val Theme: String,
    val TotalItemCount: Int,
    val Resource: String,
    var IsPlay: Boolean = false,  //用于短文填空传值
    val LevelType: Int
)

data class SameAudio(
    val Duration: Int,
    val Path: String,
    val Type: Int
)


data class ChildSame(
    val ChildAnalysis: String,
    val ChildAnswer: String,
    val ChildAnswerType: Int,
    val ChildAsk: String,
    val ChildSectionName: String,
    val ChildDisplay: String,
    val ChildAudio: ChildAudioSame,
    val ChildOptionList: List<ChildOptionSame>,
    val IsOral: Boolean,
    val ItemList: List<ItemSame>,
    val SortIndexType: Int
)

data class ImportKlgSame(
    val Code: String,
    val Name: String,
    val UniqueCode: String
)

data class MainKlgSame(
    val Code: String,
    val Name: String,
    val UniqueCode: String
)

data class QuesAudioSame(
    val Article: String,
    val Path: String,
    val TimeLength: Int
)

data class ChildAudioSame(
    val Path: String,
    val TimeLength: Int
)

data class ChildOptionSame(
    val IsRight: Boolean,
    val Option: String,
    val OptionIndex: String,
    val Rate: String,
    val StuCount: String,
    val ShowType: Int
)

data class ItemSame(
    //add by long
    val AnswerWordsNumber: Int,
    var StuAnswer: String,
    var AudioPath: String,
    var ImagePath: String,
    var IsAnswer: Boolean = false,
    var StuAnswerAudioWord: String,
    var StuAnswerTxtWord: String,
    var WrittingAnswerType: Int,
    var State: Int,
    var ScoreRate: Double,
    var EvalScore: String,
    val IsRemark: Boolean,
    val ItemAnalysis: String,
    var ItemAnswer: String,
    val ItemAskList: List<ItemAskSame>,
    val ItemOptionList: List<ItemOptionSame>,
    val ItemSortIndex: String,
    val SortIndex: String
)

data class ModelAnswerAreaSame(
    val AnswerArea: String,
    val Index: Int
)

data class ModelAnswerInfoSame(
    val Answer: String,
    val Index: Int
)

data class ItemAskSame(
    //add by long
    var StuAnswer: String,
    var AskTip:String,
    val Answer: String,
    val Ask: String
)

data class ItemOptionSame(
    val Option: String,
    val OptionIndex: String,
    val Rate: String,
    val ShowType: Int,
    val StuCount: String
)